베타 분포

베타 분포(Beta distribution)는 다른 확률 분포와 달리 자연계에 존재하는 데이터의 분포를 묘사하기 보다는 베이지안 추정의 결과를 묘사하기위한 목적으로 주로 사용된다. 베이지안 추정(Bayesian estimation)은 추정하고자 하는 모수의 값을 하나의 숫자로 나타내는 것이 아니라 분포로 묘사한다.

베타 분포의 확률 밀도 함수는 $a$와 $b$라는 두 개의 모수(parameter)를 가지며 수학적으로 다음과 같이 정의된다.

$$ \begin{align} \text{Beta}(x;a,b) & = \frac{\Gamma(a+b)}{\Gamma(a)\Gamma(b)}\, x^{a-1}(1-x)^{b-1} \end{align} $$

이 식에서 $$ \Gamma(a) = \int_0^\infty x^{a-1} e^{-x}\, dx $$

베타 분포의 확률 밀도 함수는 그림에서 볼 수 있듯이 0부터 1까지만의 값을 가진다. 이러한 함수를 finite support를 가진다고 한다.


In [11]:
xx = np.linspace(0, 1, 1000)
plt.subplot(221)
plt.fill(xx, sp.stats.beta(1.0001, 1.0001).pdf(xx)); plt.ylim(0, 6)
plt.title("(A) a=1, b=1")
plt.subplot(222)
plt.fill(xx, sp.stats.beta(4, 2).pdf(xx)); plt.ylim(0, 6)
plt.title("(B) a=4, b=2, mode=0.75")
plt.subplot(223)
plt.fill(xx, sp.stats.beta(8, 4).pdf(xx)); plt.ylim(0, 6)
plt.title("(C) a=8, b=4, mode=0.60")
plt.subplot(224)
plt.fill(xx, sp.stats.beta(30, 12).pdf(xx)); plt.ylim(0, 6)
plt.title("(D) a=30, b=12, mode=0.7")
plt.tight_layout()
plt.show()


위 그림이 베이지안 추정 결과라면 각각은 모수에 대해 다음과 같이 추정한 것과 같다.

  • (A): 추정할 수 없다. (정보가 없음)
  • (B): 모수값이 0.75일 가능성이 가장 크다. (정확도 낮음)
  • (C): 모수값이 0.60일 가능성이 가장 크다. (정확도 중간)
  • (D): 모수값이 0.70일 가능성이 가장 크다. (정확도 높음)

베타 분포의 기댓값, 최빈값, 분산은 각각 다음과 같다.

  • 기댓값
$$E[x] = \dfrac{a}{a+b}$$
  • 최빈값 $$\dfrac{a - 1}{a+b - 2}$$
  • 분산 $$\text{Var}[x] = \dfrac{ab}{(a+b)^2(a+b+1)}$$